package JDBC;

import java.sql.*;
/*
1、JDBC
作用：是Java数据库连接技术的简称，提供连接各种常用数据库的能力
结构：
DriverManager类：依据数据库的不同，管理JDBC驱动
Connections接口：负责连接数据库并担任传送数据库的能力
Statement接口：由Connection产生，负责执行SQL语句
ResultSet接口：从数据源读取数据
2、驱动管家
DriverManager类：
用法：加载驱动类Class.forName("com.mysql.jdbc.Driver"(类的路径))
方法：获取连接对象getConnection("url","用户名","密码")
url：jdbc(方式)：mysql(数据库)：//localhost：3306(端口号)/要连接的数据库名称
 */
public class MYSQL {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //加载驱动
        Class.forName("com.mysql.cj.jdbc.Driver");
        //构建连接参数
        String url="jdbc:mysql://localhost:3306/xwebdb?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false";
        String user="root";
        String passwd="root";
        //获取连接对象
        Connection connection=DriverManager.getConnection(url,user,passwd);
        //获取执行者对象
        Statement statement=connection.createStatement();
        //判断连接对象
        if (connection == null) {
            System.out.println("连接失败");
        }
        else {
            System.out.println("连接成功");

            //添加数据
//            String sql1="insert into user values(5,'gits','123456')";
//            if (statement.executeLargeUpdate(sql1) >=1) {
//                System.out.println("添加成功");
//            }
//            else{
//                System.out.println("添加失败");
//            }

            //删除数据
//            String sql2="DELETE FROM user WHERE id=6";
//            if (statement.executeLargeUpdate(sql2) >=1) {
//                System.out.println("删除成功");
//            }
//            else{
//                System.out.println("删除失败");
//            }

            //修改数据
//            String sql3="update user set userName='gitcode' where id=5 ";
//            if (statement.executeLargeUpdate(sql3) >=1) {
//                System.out.println("修改成功");
//            }
//            else{
//                System.out.println("修改失败");
//            }

            //查看数据
            String sql4="select * from user;";
            ResultSet resultSet=statement.executeQuery(sql4);
            while (resultSet.next()){
                System.out.println("id: "+resultSet.getObject("id"));
                System.out.println("userName: "+resultSet.getObject("userName"));
                System.out.println("password: "+resultSet.getObject("password"));
                System.out.println("----------");
            }
            connection.close();
        }
    }
}
